﻿// --------------------------------------------------------------------------------------------------------------------- 
// <copyright file="CheckInEvent.cs" company="Scrum for Team System">
//   None
// </copyright>
// <summary>
//   Defines the CheckinEvent type.
// </summary>
// ---------------------------------------------------------------------------------------------------------------------
#region

using System;
using System.CodeDom.Compiler;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;

#endregion

/// <summary>
/// Enumeration of the posible Checkin Work Item Checkin Actions
/// </summary>
[GeneratedCode("xsd", "2.0.50727.42")]
[Serializable]
public enum CheckinWorkItemCheckinAction
{
    /// <summary>
    /// The none action
    /// </summary>
    None,

    /// <summary>
    /// The resolve action
    /// </summary>
    Resolve,

    /// <summary>
    /// The associate action
    /// </summary>
    Associate
}

/// <summary>
/// Event Raised when a item is Checked-In to the Source Control Repository
/// </summary>
[GeneratedCode("xsd", "2.0.50727.42")]
[Serializable]
[DebuggerStepThrough]
[DesignerCategory("code")]
[XmlRoot(Namespace = "", IsNullable = true)]
public class CheckinEvent
{
    /// <summary>
    /// Gets or sets a value indicating whether AllChangesIncluded.
    /// </summary>
    /// <value>
    /// The all changes included.
    /// </value>
    public bool AllChangesIncluded
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Artifacts.
    /// </summary>
    /// <value>
    /// The artifacts.
    /// </value>
    [XmlArrayItem("Artifact")]
    public object[] Artifacts
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets CheckinInformation.
    /// </summary>
    /// <value>
    /// The checkin information.
    /// </value>
    [XmlArrayItem("CheckinInformation")]
    public object[] CheckinInformation
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets CheckinNotes.
    /// </summary>
    /// <value>
    /// The checkin notes.
    /// </value>
    [XmlArrayItem("CheckinNote")]
    public object[] CheckinNotes
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Comment.
    /// </summary>
    /// <value>
    /// The comment.
    /// </value>
    public string Comment
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Committer.
    /// </summary>
    /// <value>
    /// The committer.
    /// </value>
    public string Committer
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets ContentTitle.
    /// </summary>
    /// <value>
    /// The content title.
    /// </value>
    public string ContentTitle
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets CreationDate.
    /// </summary>
    /// <value>
    /// The creation date.
    /// </value>
    public string CreationDate
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Notice.
    /// </summary>
    /// <value>
    /// The notice.
    /// </value>
    public string Notice
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Number.
    /// </summary>
    /// <value>
    /// The number.
    /// </value>
    public int Number
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Owner.
    /// </summary>
    /// <value>
    /// The owner.
    /// </value>
    public string Owner
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets PolicyFailures.
    /// </summary>
    /// <value>
    /// The policy failures.
    /// </value>
    [XmlArrayItem("PolicyFailure")]
    public object[] PolicyFailures
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets PolicyOverrideComment.
    /// </summary>
    /// <value>
    /// The policy override comment.
    /// </value>
    public string PolicyOverrideComment
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Subscriber.
    /// </summary>
    /// <value>
    /// The subscriber.
    /// </value>
    public string Subscriber
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets TeamProject.
    /// </summary>
    /// <value>
    /// The team project.
    /// </value>
    public string TeamProject
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets TimeZone.
    /// </summary>
    /// <value>
    /// The time zone.
    /// </value>
    public string TimeZone
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets TimeZoneOffset.
    /// </summary>
    /// <value>
    /// The time zone offset.
    /// </value>
    public string TimeZoneOffset
    {
        get;
        set;
    }

    /// <summary>
    /// Gets or sets Title.
    /// </summary>
    /// <value>
    /// The title.
    /// </value>
    public string Title
    {
        get;
        set;
    }
}